package com.qiche.model;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class Card2Example {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public Card2Example() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Long value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Long value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Long value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Long value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Long value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Long value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Long> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Long> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Long value1, Long value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Long value1, Long value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andCardCodeIsNull() {
            addCriterion("card_code is null");
            return (Criteria) this;
        }

        public Criteria andCardCodeIsNotNull() {
            addCriterion("card_code is not null");
            return (Criteria) this;
        }

        public Criteria andCardCodeEqualTo(String value) {
            addCriterion("card_code =", value, "cardCode");
            return (Criteria) this;
        }

        public Criteria andCardCodeNotEqualTo(String value) {
            addCriterion("card_code <>", value, "cardCode");
            return (Criteria) this;
        }

        public Criteria andCardCodeGreaterThan(String value) {
            addCriterion("card_code >", value, "cardCode");
            return (Criteria) this;
        }

        public Criteria andCardCodeGreaterThanOrEqualTo(String value) {
            addCriterion("card_code >=", value, "cardCode");
            return (Criteria) this;
        }

        public Criteria andCardCodeLessThan(String value) {
            addCriterion("card_code <", value, "cardCode");
            return (Criteria) this;
        }

        public Criteria andCardCodeLessThanOrEqualTo(String value) {
            addCriterion("card_code <=", value, "cardCode");
            return (Criteria) this;
        }

        public Criteria andCardCodeLike(String value) {
            addCriterion("card_code like", value, "cardCode");
            return (Criteria) this;
        }

        public Criteria andCardCodeNotLike(String value) {
            addCriterion("card_code not like", value, "cardCode");
            return (Criteria) this;
        }

        public Criteria andCardCodeIn(List<String> values) {
            addCriterion("card_code in", values, "cardCode");
            return (Criteria) this;
        }

        public Criteria andCardCodeNotIn(List<String> values) {
            addCriterion("card_code not in", values, "cardCode");
            return (Criteria) this;
        }

        public Criteria andCardCodeBetween(String value1, String value2) {
            addCriterion("card_code between", value1, value2, "cardCode");
            return (Criteria) this;
        }

        public Criteria andCardCodeNotBetween(String value1, String value2) {
            addCriterion("card_code not between", value1, value2, "cardCode");
            return (Criteria) this;
        }

        public Criteria andCardTypeIsNull() {
            addCriterion("card_type is null");
            return (Criteria) this;
        }

        public Criteria andCardTypeIsNotNull() {
            addCriterion("card_type is not null");
            return (Criteria) this;
        }

        public Criteria andCardTypeEqualTo(String value) {
            addCriterion("card_type =", value, "cardType");
            return (Criteria) this;
        }

        public Criteria andCardTypeNotEqualTo(String value) {
            addCriterion("card_type <>", value, "cardType");
            return (Criteria) this;
        }

        public Criteria andCardTypeGreaterThan(String value) {
            addCriterion("card_type >", value, "cardType");
            return (Criteria) this;
        }

        public Criteria andCardTypeGreaterThanOrEqualTo(String value) {
            addCriterion("card_type >=", value, "cardType");
            return (Criteria) this;
        }

        public Criteria andCardTypeLessThan(String value) {
            addCriterion("card_type <", value, "cardType");
            return (Criteria) this;
        }

        public Criteria andCardTypeLessThanOrEqualTo(String value) {
            addCriterion("card_type <=", value, "cardType");
            return (Criteria) this;
        }

        public Criteria andCardTypeLike(String value) {
            addCriterion("card_type like", value, "cardType");
            return (Criteria) this;
        }

        public Criteria andCardTypeNotLike(String value) {
            addCriterion("card_type not like", value, "cardType");
            return (Criteria) this;
        }

        public Criteria andCardTypeIn(List<String> values) {
            addCriterion("card_type in", values, "cardType");
            return (Criteria) this;
        }

        public Criteria andCardTypeNotIn(List<String> values) {
            addCriterion("card_type not in", values, "cardType");
            return (Criteria) this;
        }

        public Criteria andCardTypeBetween(String value1, String value2) {
            addCriterion("card_type between", value1, value2, "cardType");
            return (Criteria) this;
        }

        public Criteria andCardTypeNotBetween(String value1, String value2) {
            addCriterion("card_type not between", value1, value2, "cardType");
            return (Criteria) this;
        }

        public Criteria andCreateDateIsNull() {
            addCriterion("create_date is null");
            return (Criteria) this;
        }

        public Criteria andCreateDateIsNotNull() {
            addCriterion("create_date is not null");
            return (Criteria) this;
        }

        public Criteria andCreateDateEqualTo(Date value) {
            addCriterion("create_date =", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotEqualTo(Date value) {
            addCriterion("create_date <>", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateGreaterThan(Date value) {
            addCriterion("create_date >", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateGreaterThanOrEqualTo(Date value) {
            addCriterion("create_date >=", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateLessThan(Date value) {
            addCriterion("create_date <", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateLessThanOrEqualTo(Date value) {
            addCriterion("create_date <=", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateIn(List<Date> values) {
            addCriterion("create_date in", values, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotIn(List<Date> values) {
            addCriterion("create_date not in", values, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateBetween(Date value1, Date value2) {
            addCriterion("create_date between", value1, value2, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotBetween(Date value1, Date value2) {
            addCriterion("create_date not between", value1, value2, "createDate");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("status is null");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("status is not null");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(String value) {
            addCriterion("status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(String value) {
            addCriterion("status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(String value) {
            addCriterion("status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(String value) {
            addCriterion("status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(String value) {
            addCriterion("status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(String value) {
            addCriterion("status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusLike(String value) {
            addCriterion("status like", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotLike(String value) {
            addCriterion("status not like", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<String> values) {
            addCriterion("status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<String> values) {
            addCriterion("status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(String value1, String value2) {
            addCriterion("status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(String value1, String value2) {
            addCriterion("status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andReceivingDateIsNull() {
            addCriterion("receiving_date is null");
            return (Criteria) this;
        }

        public Criteria andReceivingDateIsNotNull() {
            addCriterion("receiving_date is not null");
            return (Criteria) this;
        }

        public Criteria andReceivingDateEqualTo(Date value) {
            addCriterion("receiving_date =", value, "receivingDate");
            return (Criteria) this;
        }

        public Criteria andReceivingDateNotEqualTo(Date value) {
            addCriterion("receiving_date <>", value, "receivingDate");
            return (Criteria) this;
        }

        public Criteria andReceivingDateGreaterThan(Date value) {
            addCriterion("receiving_date >", value, "receivingDate");
            return (Criteria) this;
        }

        public Criteria andReceivingDateGreaterThanOrEqualTo(Date value) {
            addCriterion("receiving_date >=", value, "receivingDate");
            return (Criteria) this;
        }

        public Criteria andReceivingDateLessThan(Date value) {
            addCriterion("receiving_date <", value, "receivingDate");
            return (Criteria) this;
        }

        public Criteria andReceivingDateLessThanOrEqualTo(Date value) {
            addCriterion("receiving_date <=", value, "receivingDate");
            return (Criteria) this;
        }

        public Criteria andReceivingDateIn(List<Date> values) {
            addCriterion("receiving_date in", values, "receivingDate");
            return (Criteria) this;
        }

        public Criteria andReceivingDateNotIn(List<Date> values) {
            addCriterion("receiving_date not in", values, "receivingDate");
            return (Criteria) this;
        }

        public Criteria andReceivingDateBetween(Date value1, Date value2) {
            addCriterion("receiving_date between", value1, value2, "receivingDate");
            return (Criteria) this;
        }

        public Criteria andReceivingDateNotBetween(Date value1, Date value2) {
            addCriterion("receiving_date not between", value1, value2, "receivingDate");
            return (Criteria) this;
        }

        public Criteria andUsePeriodIsNull() {
            addCriterion("use_period is null");
            return (Criteria) this;
        }

        public Criteria andUsePeriodIsNotNull() {
            addCriterion("use_period is not null");
            return (Criteria) this;
        }

        public Criteria andUsePeriodEqualTo(Integer value) {
            addCriterion("use_period =", value, "usePeriod");
            return (Criteria) this;
        }

        public Criteria andUsePeriodNotEqualTo(Integer value) {
            addCriterion("use_period <>", value, "usePeriod");
            return (Criteria) this;
        }

        public Criteria andUsePeriodGreaterThan(Integer value) {
            addCriterion("use_period >", value, "usePeriod");
            return (Criteria) this;
        }

        public Criteria andUsePeriodGreaterThanOrEqualTo(Integer value) {
            addCriterion("use_period >=", value, "usePeriod");
            return (Criteria) this;
        }

        public Criteria andUsePeriodLessThan(Integer value) {
            addCriterion("use_period <", value, "usePeriod");
            return (Criteria) this;
        }

        public Criteria andUsePeriodLessThanOrEqualTo(Integer value) {
            addCriterion("use_period <=", value, "usePeriod");
            return (Criteria) this;
        }

        public Criteria andUsePeriodIn(List<Integer> values) {
            addCriterion("use_period in", values, "usePeriod");
            return (Criteria) this;
        }

        public Criteria andUsePeriodNotIn(List<Integer> values) {
            addCriterion("use_period not in", values, "usePeriod");
            return (Criteria) this;
        }

        public Criteria andUsePeriodBetween(Integer value1, Integer value2) {
            addCriterion("use_period between", value1, value2, "usePeriod");
            return (Criteria) this;
        }

        public Criteria andUsePeriodNotBetween(Integer value1, Integer value2) {
            addCriterion("use_period not between", value1, value2, "usePeriod");
            return (Criteria) this;
        }

        public Criteria andCardAmountIsNull() {
            addCriterion("card_amount is null");
            return (Criteria) this;
        }

        public Criteria andCardAmountIsNotNull() {
            addCriterion("card_amount is not null");
            return (Criteria) this;
        }

        public Criteria andCardAmountEqualTo(Long value) {
            addCriterion("card_amount =", value, "cardAmount");
            return (Criteria) this;
        }

        public Criteria andCardAmountNotEqualTo(Long value) {
            addCriterion("card_amount <>", value, "cardAmount");
            return (Criteria) this;
        }

        public Criteria andCardAmountGreaterThan(Long value) {
            addCriterion("card_amount >", value, "cardAmount");
            return (Criteria) this;
        }

        public Criteria andCardAmountGreaterThanOrEqualTo(Long value) {
            addCriterion("card_amount >=", value, "cardAmount");
            return (Criteria) this;
        }

        public Criteria andCardAmountLessThan(Long value) {
            addCriterion("card_amount <", value, "cardAmount");
            return (Criteria) this;
        }

        public Criteria andCardAmountLessThanOrEqualTo(Long value) {
            addCriterion("card_amount <=", value, "cardAmount");
            return (Criteria) this;
        }

        public Criteria andCardAmountIn(List<Long> values) {
            addCriterion("card_amount in", values, "cardAmount");
            return (Criteria) this;
        }

        public Criteria andCardAmountNotIn(List<Long> values) {
            addCriterion("card_amount not in", values, "cardAmount");
            return (Criteria) this;
        }

        public Criteria andCardAmountBetween(Long value1, Long value2) {
            addCriterion("card_amount between", value1, value2, "cardAmount");
            return (Criteria) this;
        }

        public Criteria andCardAmountNotBetween(Long value1, Long value2) {
            addCriterion("card_amount not between", value1, value2, "cardAmount");
            return (Criteria) this;
        }

        public Criteria andWriteoffShopIsNull() {
            addCriterion("writeoff_shop is null");
            return (Criteria) this;
        }

        public Criteria andWriteoffShopIsNotNull() {
            addCriterion("writeoff_shop is not null");
            return (Criteria) this;
        }

        public Criteria andWriteoffShopEqualTo(Long value) {
            addCriterion("writeoff_shop =", value, "writeoffShop");
            return (Criteria) this;
        }

        public Criteria andWriteoffShopNotEqualTo(Long value) {
            addCriterion("writeoff_shop <>", value, "writeoffShop");
            return (Criteria) this;
        }

        public Criteria andWriteoffShopGreaterThan(Long value) {
            addCriterion("writeoff_shop >", value, "writeoffShop");
            return (Criteria) this;
        }

        public Criteria andWriteoffShopGreaterThanOrEqualTo(Long value) {
            addCriterion("writeoff_shop >=", value, "writeoffShop");
            return (Criteria) this;
        }

        public Criteria andWriteoffShopLessThan(Long value) {
            addCriterion("writeoff_shop <", value, "writeoffShop");
            return (Criteria) this;
        }

        public Criteria andWriteoffShopLessThanOrEqualTo(Long value) {
            addCriterion("writeoff_shop <=", value, "writeoffShop");
            return (Criteria) this;
        }

        public Criteria andWriteoffShopIn(List<Long> values) {
            addCriterion("writeoff_shop in", values, "writeoffShop");
            return (Criteria) this;
        }

        public Criteria andWriteoffShopNotIn(List<Long> values) {
            addCriterion("writeoff_shop not in", values, "writeoffShop");
            return (Criteria) this;
        }

        public Criteria andWriteoffShopBetween(Long value1, Long value2) {
            addCriterion("writeoff_shop between", value1, value2, "writeoffShop");
            return (Criteria) this;
        }

        public Criteria andWriteoffShopNotBetween(Long value1, Long value2) {
            addCriterion("writeoff_shop not between", value1, value2, "writeoffShop");
            return (Criteria) this;
        }

        public Criteria andActivityIdIsNull() {
            addCriterion("activity_id is null");
            return (Criteria) this;
        }

        public Criteria andActivityIdIsNotNull() {
            addCriterion("activity_id is not null");
            return (Criteria) this;
        }

        public Criteria andActivityIdEqualTo(Long value) {
            addCriterion("activity_id =", value, "activityId");
            return (Criteria) this;
        }

        public Criteria andActivityIdNotEqualTo(Long value) {
            addCriterion("activity_id <>", value, "activityId");
            return (Criteria) this;
        }

        public Criteria andActivityIdGreaterThan(Long value) {
            addCriterion("activity_id >", value, "activityId");
            return (Criteria) this;
        }

        public Criteria andActivityIdGreaterThanOrEqualTo(Long value) {
            addCriterion("activity_id >=", value, "activityId");
            return (Criteria) this;
        }

        public Criteria andActivityIdLessThan(Long value) {
            addCriterion("activity_id <", value, "activityId");
            return (Criteria) this;
        }

        public Criteria andActivityIdLessThanOrEqualTo(Long value) {
            addCriterion("activity_id <=", value, "activityId");
            return (Criteria) this;
        }

        public Criteria andActivityIdIn(List<Long> values) {
            addCriterion("activity_id in", values, "activityId");
            return (Criteria) this;
        }

        public Criteria andActivityIdNotIn(List<Long> values) {
            addCriterion("activity_id not in", values, "activityId");
            return (Criteria) this;
        }

        public Criteria andActivityIdBetween(Long value1, Long value2) {
            addCriterion("activity_id between", value1, value2, "activityId");
            return (Criteria) this;
        }

        public Criteria andActivityIdNotBetween(Long value1, Long value2) {
            addCriterion("activity_id not between", value1, value2, "activityId");
            return (Criteria) this;
        }

        public Criteria andMemberIdIsNull() {
            addCriterion("member_id is null");
            return (Criteria) this;
        }

        public Criteria andMemberIdIsNotNull() {
            addCriterion("member_id is not null");
            return (Criteria) this;
        }

        public Criteria andMemberIdEqualTo(Long value) {
            addCriterion("member_id =", value, "memberId");
            return (Criteria) this;
        }

        public Criteria andMemberIdNotEqualTo(Long value) {
            addCriterion("member_id <>", value, "memberId");
            return (Criteria) this;
        }

        public Criteria andMemberIdGreaterThan(Long value) {
            addCriterion("member_id >", value, "memberId");
            return (Criteria) this;
        }

        public Criteria andMemberIdGreaterThanOrEqualTo(Long value) {
            addCriterion("member_id >=", value, "memberId");
            return (Criteria) this;
        }

        public Criteria andMemberIdLessThan(Long value) {
            addCriterion("member_id <", value, "memberId");
            return (Criteria) this;
        }

        public Criteria andMemberIdLessThanOrEqualTo(Long value) {
            addCriterion("member_id <=", value, "memberId");
            return (Criteria) this;
        }

        public Criteria andMemberIdIn(List<Long> values) {
            addCriterion("member_id in", values, "memberId");
            return (Criteria) this;
        }

        public Criteria andMemberIdNotIn(List<Long> values) {
            addCriterion("member_id not in", values, "memberId");
            return (Criteria) this;
        }

        public Criteria andMemberIdBetween(Long value1, Long value2) {
            addCriterion("member_id between", value1, value2, "memberId");
            return (Criteria) this;
        }

        public Criteria andMemberIdNotBetween(Long value1, Long value2) {
            addCriterion("member_id not between", value1, value2, "memberId");
            return (Criteria) this;
        }

        public Criteria andGetAmountIsNull() {
            addCriterion("get_amount is null");
            return (Criteria) this;
        }

        public Criteria andGetAmountIsNotNull() {
            addCriterion("get_amount is not null");
            return (Criteria) this;
        }

        public Criteria andGetAmountEqualTo(Long value) {
            addCriterion("get_amount =", value, "getAmount");
            return (Criteria) this;
        }

        public Criteria andGetAmountNotEqualTo(Long value) {
            addCriterion("get_amount <>", value, "getAmount");
            return (Criteria) this;
        }

        public Criteria andGetAmountGreaterThan(Long value) {
            addCriterion("get_amount >", value, "getAmount");
            return (Criteria) this;
        }

        public Criteria andGetAmountGreaterThanOrEqualTo(Long value) {
            addCriterion("get_amount >=", value, "getAmount");
            return (Criteria) this;
        }

        public Criteria andGetAmountLessThan(Long value) {
            addCriterion("get_amount <", value, "getAmount");
            return (Criteria) this;
        }

        public Criteria andGetAmountLessThanOrEqualTo(Long value) {
            addCriterion("get_amount <=", value, "getAmount");
            return (Criteria) this;
        }

        public Criteria andGetAmountIn(List<Long> values) {
            addCriterion("get_amount in", values, "getAmount");
            return (Criteria) this;
        }

        public Criteria andGetAmountNotIn(List<Long> values) {
            addCriterion("get_amount not in", values, "getAmount");
            return (Criteria) this;
        }

        public Criteria andGetAmountBetween(Long value1, Long value2) {
            addCriterion("get_amount between", value1, value2, "getAmount");
            return (Criteria) this;
        }

        public Criteria andGetAmountNotBetween(Long value1, Long value2) {
            addCriterion("get_amount not between", value1, value2, "getAmount");
            return (Criteria) this;
        }

        public Criteria andTacticsIdIsNull() {
            addCriterion("tactics_id is null");
            return (Criteria) this;
        }

        public Criteria andTacticsIdIsNotNull() {
            addCriterion("tactics_id is not null");
            return (Criteria) this;
        }

        public Criteria andTacticsIdEqualTo(Long value) {
            addCriterion("tactics_id =", value, "tacticsId");
            return (Criteria) this;
        }

        public Criteria andTacticsIdNotEqualTo(Long value) {
            addCriterion("tactics_id <>", value, "tacticsId");
            return (Criteria) this;
        }

        public Criteria andTacticsIdGreaterThan(Long value) {
            addCriterion("tactics_id >", value, "tacticsId");
            return (Criteria) this;
        }

        public Criteria andTacticsIdGreaterThanOrEqualTo(Long value) {
            addCriterion("tactics_id >=", value, "tacticsId");
            return (Criteria) this;
        }

        public Criteria andTacticsIdLessThan(Long value) {
            addCriterion("tactics_id <", value, "tacticsId");
            return (Criteria) this;
        }

        public Criteria andTacticsIdLessThanOrEqualTo(Long value) {
            addCriterion("tactics_id <=", value, "tacticsId");
            return (Criteria) this;
        }

        public Criteria andTacticsIdIn(List<Long> values) {
            addCriterion("tactics_id in", values, "tacticsId");
            return (Criteria) this;
        }

        public Criteria andTacticsIdNotIn(List<Long> values) {
            addCriterion("tactics_id not in", values, "tacticsId");
            return (Criteria) this;
        }

        public Criteria andTacticsIdBetween(Long value1, Long value2) {
            addCriterion("tactics_id between", value1, value2, "tacticsId");
            return (Criteria) this;
        }

        public Criteria andTacticsIdNotBetween(Long value1, Long value2) {
            addCriterion("tactics_id not between", value1, value2, "tacticsId");
            return (Criteria) this;
        }

        public Criteria andCardTitleIsNull() {
            addCriterion("card_title is null");
            return (Criteria) this;
        }

        public Criteria andCardTitleIsNotNull() {
            addCriterion("card_title is not null");
            return (Criteria) this;
        }

        public Criteria andCardTitleEqualTo(String value) {
            addCriterion("card_title =", value, "cardTitle");
            return (Criteria) this;
        }

        public Criteria andCardTitleNotEqualTo(String value) {
            addCriterion("card_title <>", value, "cardTitle");
            return (Criteria) this;
        }

        public Criteria andCardTitleGreaterThan(String value) {
            addCriterion("card_title >", value, "cardTitle");
            return (Criteria) this;
        }

        public Criteria andCardTitleGreaterThanOrEqualTo(String value) {
            addCriterion("card_title >=", value, "cardTitle");
            return (Criteria) this;
        }

        public Criteria andCardTitleLessThan(String value) {
            addCriterion("card_title <", value, "cardTitle");
            return (Criteria) this;
        }

        public Criteria andCardTitleLessThanOrEqualTo(String value) {
            addCriterion("card_title <=", value, "cardTitle");
            return (Criteria) this;
        }

        public Criteria andCardTitleLike(String value) {
            addCriterion("card_title like", value, "cardTitle");
            return (Criteria) this;
        }

        public Criteria andCardTitleNotLike(String value) {
            addCriterion("card_title not like", value, "cardTitle");
            return (Criteria) this;
        }

        public Criteria andCardTitleIn(List<String> values) {
            addCriterion("card_title in", values, "cardTitle");
            return (Criteria) this;
        }

        public Criteria andCardTitleNotIn(List<String> values) {
            addCriterion("card_title not in", values, "cardTitle");
            return (Criteria) this;
        }

        public Criteria andCardTitleBetween(String value1, String value2) {
            addCriterion("card_title between", value1, value2, "cardTitle");
            return (Criteria) this;
        }

        public Criteria andCardTitleNotBetween(String value1, String value2) {
            addCriterion("card_title not between", value1, value2, "cardTitle");
            return (Criteria) this;
        }

        public Criteria andMerchantNameIsNull() {
            addCriterion("merchant_name is null");
            return (Criteria) this;
        }

        public Criteria andMerchantNameIsNotNull() {
            addCriterion("merchant_name is not null");
            return (Criteria) this;
        }

        public Criteria andMerchantNameEqualTo(String value) {
            addCriterion("merchant_name =", value, "merchantName");
            return (Criteria) this;
        }

        public Criteria andMerchantNameNotEqualTo(String value) {
            addCriterion("merchant_name <>", value, "merchantName");
            return (Criteria) this;
        }

        public Criteria andMerchantNameGreaterThan(String value) {
            addCriterion("merchant_name >", value, "merchantName");
            return (Criteria) this;
        }

        public Criteria andMerchantNameGreaterThanOrEqualTo(String value) {
            addCriterion("merchant_name >=", value, "merchantName");
            return (Criteria) this;
        }

        public Criteria andMerchantNameLessThan(String value) {
            addCriterion("merchant_name <", value, "merchantName");
            return (Criteria) this;
        }

        public Criteria andMerchantNameLessThanOrEqualTo(String value) {
            addCriterion("merchant_name <=", value, "merchantName");
            return (Criteria) this;
        }

        public Criteria andMerchantNameLike(String value) {
            addCriterion("merchant_name like", value, "merchantName");
            return (Criteria) this;
        }

        public Criteria andMerchantNameNotLike(String value) {
            addCriterion("merchant_name not like", value, "merchantName");
            return (Criteria) this;
        }

        public Criteria andMerchantNameIn(List<String> values) {
            addCriterion("merchant_name in", values, "merchantName");
            return (Criteria) this;
        }

        public Criteria andMerchantNameNotIn(List<String> values) {
            addCriterion("merchant_name not in", values, "merchantName");
            return (Criteria) this;
        }

        public Criteria andMerchantNameBetween(String value1, String value2) {
            addCriterion("merchant_name between", value1, value2, "merchantName");
            return (Criteria) this;
        }

        public Criteria andMerchantNameNotBetween(String value1, String value2) {
            addCriterion("merchant_name not between", value1, value2, "merchantName");
            return (Criteria) this;
        }

        public Criteria andMerchantIntroductionIsNull() {
            addCriterion("merchant_introduction is null");
            return (Criteria) this;
        }

        public Criteria andMerchantIntroductionIsNotNull() {
            addCriterion("merchant_introduction is not null");
            return (Criteria) this;
        }

        public Criteria andMerchantIntroductionEqualTo(String value) {
            addCriterion("merchant_introduction =", value, "merchantIntroduction");
            return (Criteria) this;
        }

        public Criteria andMerchantIntroductionNotEqualTo(String value) {
            addCriterion("merchant_introduction <>", value, "merchantIntroduction");
            return (Criteria) this;
        }

        public Criteria andMerchantIntroductionGreaterThan(String value) {
            addCriterion("merchant_introduction >", value, "merchantIntroduction");
            return (Criteria) this;
        }

        public Criteria andMerchantIntroductionGreaterThanOrEqualTo(String value) {
            addCriterion("merchant_introduction >=", value, "merchantIntroduction");
            return (Criteria) this;
        }

        public Criteria andMerchantIntroductionLessThan(String value) {
            addCriterion("merchant_introduction <", value, "merchantIntroduction");
            return (Criteria) this;
        }

        public Criteria andMerchantIntroductionLessThanOrEqualTo(String value) {
            addCriterion("merchant_introduction <=", value, "merchantIntroduction");
            return (Criteria) this;
        }

        public Criteria andMerchantIntroductionLike(String value) {
            addCriterion("merchant_introduction like", value, "merchantIntroduction");
            return (Criteria) this;
        }

        public Criteria andMerchantIntroductionNotLike(String value) {
            addCriterion("merchant_introduction not like", value, "merchantIntroduction");
            return (Criteria) this;
        }

        public Criteria andMerchantIntroductionIn(List<String> values) {
            addCriterion("merchant_introduction in", values, "merchantIntroduction");
            return (Criteria) this;
        }

        public Criteria andMerchantIntroductionNotIn(List<String> values) {
            addCriterion("merchant_introduction not in", values, "merchantIntroduction");
            return (Criteria) this;
        }

        public Criteria andMerchantIntroductionBetween(String value1, String value2) {
            addCriterion("merchant_introduction between", value1, value2, "merchantIntroduction");
            return (Criteria) this;
        }

        public Criteria andMerchantIntroductionNotBetween(String value1, String value2) {
            addCriterion("merchant_introduction not between", value1, value2, "merchantIntroduction");
            return (Criteria) this;
        }

        public Criteria andAvailableIsNull() {
            addCriterion("available is null");
            return (Criteria) this;
        }

        public Criteria andAvailableIsNotNull() {
            addCriterion("available is not null");
            return (Criteria) this;
        }

        public Criteria andAvailableEqualTo(String value) {
            addCriterion("available =", value, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableNotEqualTo(String value) {
            addCriterion("available <>", value, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableGreaterThan(String value) {
            addCriterion("available >", value, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableGreaterThanOrEqualTo(String value) {
            addCriterion("available >=", value, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableLessThan(String value) {
            addCriterion("available <", value, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableLessThanOrEqualTo(String value) {
            addCriterion("available <=", value, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableLike(String value) {
            addCriterion("available like", value, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableNotLike(String value) {
            addCriterion("available not like", value, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableIn(List<String> values) {
            addCriterion("available in", values, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableNotIn(List<String> values) {
            addCriterion("available not in", values, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableBetween(String value1, String value2) {
            addCriterion("available between", value1, value2, "available");
            return (Criteria) this;
        }

        public Criteria andAvailableNotBetween(String value1, String value2) {
            addCriterion("available not between", value1, value2, "available");
            return (Criteria) this;
        }

        public Criteria andWriteoffDateIsNull() {
            addCriterion("writeoff_date is null");
            return (Criteria) this;
        }

        public Criteria andWriteoffDateIsNotNull() {
            addCriterion("writeoff_date is not null");
            return (Criteria) this;
        }

        public Criteria andWriteoffDateEqualTo(Date value) {
            addCriterion("writeoff_date =", value, "writeoffDate");
            return (Criteria) this;
        }

        public Criteria andWriteoffDateNotEqualTo(Date value) {
            addCriterion("writeoff_date <>", value, "writeoffDate");
            return (Criteria) this;
        }

        public Criteria andWriteoffDateGreaterThan(Date value) {
            addCriterion("writeoff_date >", value, "writeoffDate");
            return (Criteria) this;
        }

        public Criteria andWriteoffDateGreaterThanOrEqualTo(Date value) {
            addCriterion("writeoff_date >=", value, "writeoffDate");
            return (Criteria) this;
        }

        public Criteria andWriteoffDateLessThan(Date value) {
            addCriterion("writeoff_date <", value, "writeoffDate");
            return (Criteria) this;
        }

        public Criteria andWriteoffDateLessThanOrEqualTo(Date value) {
            addCriterion("writeoff_date <=", value, "writeoffDate");
            return (Criteria) this;
        }

        public Criteria andWriteoffDateIn(List<Date> values) {
            addCriterion("writeoff_date in", values, "writeoffDate");
            return (Criteria) this;
        }

        public Criteria andWriteoffDateNotIn(List<Date> values) {
            addCriterion("writeoff_date not in", values, "writeoffDate");
            return (Criteria) this;
        }

        public Criteria andWriteoffDateBetween(Date value1, Date value2) {
            addCriterion("writeoff_date between", value1, value2, "writeoffDate");
            return (Criteria) this;
        }

        public Criteria andWriteoffDateNotBetween(Date value1, Date value2) {
            addCriterion("writeoff_date not between", value1, value2, "writeoffDate");
            return (Criteria) this;
        }

        public Criteria andVerifyBeginDateIsNull() {
            addCriterion("verify_begin_date is null");
            return (Criteria) this;
        }

        public Criteria andVerifyBeginDateIsNotNull() {
            addCriterion("verify_begin_date is not null");
            return (Criteria) this;
        }

        public Criteria andVerifyBeginDateEqualTo(Date value) {
            addCriterion("verify_begin_date =", value, "verifyBeginDate");
            return (Criteria) this;
        }

        public Criteria andVerifyBeginDateNotEqualTo(Date value) {
            addCriterion("verify_begin_date <>", value, "verifyBeginDate");
            return (Criteria) this;
        }

        public Criteria andVerifyBeginDateGreaterThan(Date value) {
            addCriterion("verify_begin_date >", value, "verifyBeginDate");
            return (Criteria) this;
        }

        public Criteria andVerifyBeginDateGreaterThanOrEqualTo(Date value) {
            addCriterion("verify_begin_date >=", value, "verifyBeginDate");
            return (Criteria) this;
        }

        public Criteria andVerifyBeginDateLessThan(Date value) {
            addCriterion("verify_begin_date <", value, "verifyBeginDate");
            return (Criteria) this;
        }

        public Criteria andVerifyBeginDateLessThanOrEqualTo(Date value) {
            addCriterion("verify_begin_date <=", value, "verifyBeginDate");
            return (Criteria) this;
        }

        public Criteria andVerifyBeginDateIn(List<Date> values) {
            addCriterion("verify_begin_date in", values, "verifyBeginDate");
            return (Criteria) this;
        }

        public Criteria andVerifyBeginDateNotIn(List<Date> values) {
            addCriterion("verify_begin_date not in", values, "verifyBeginDate");
            return (Criteria) this;
        }

        public Criteria andVerifyBeginDateBetween(Date value1, Date value2) {
            addCriterion("verify_begin_date between", value1, value2, "verifyBeginDate");
            return (Criteria) this;
        }

        public Criteria andVerifyBeginDateNotBetween(Date value1, Date value2) {
            addCriterion("verify_begin_date not between", value1, value2, "verifyBeginDate");
            return (Criteria) this;
        }

        public Criteria andVerifyEndDateIsNull() {
            addCriterion("verify_end_date is null");
            return (Criteria) this;
        }

        public Criteria andVerifyEndDateIsNotNull() {
            addCriterion("verify_end_date is not null");
            return (Criteria) this;
        }

        public Criteria andVerifyEndDateEqualTo(Date value) {
            addCriterion("verify_end_date =", value, "verifyEndDate");
            return (Criteria) this;
        }

        public Criteria andVerifyEndDateNotEqualTo(Date value) {
            addCriterion("verify_end_date <>", value, "verifyEndDate");
            return (Criteria) this;
        }

        public Criteria andVerifyEndDateGreaterThan(Date value) {
            addCriterion("verify_end_date >", value, "verifyEndDate");
            return (Criteria) this;
        }

        public Criteria andVerifyEndDateGreaterThanOrEqualTo(Date value) {
            addCriterion("verify_end_date >=", value, "verifyEndDate");
            return (Criteria) this;
        }

        public Criteria andVerifyEndDateLessThan(Date value) {
            addCriterion("verify_end_date <", value, "verifyEndDate");
            return (Criteria) this;
        }

        public Criteria andVerifyEndDateLessThanOrEqualTo(Date value) {
            addCriterion("verify_end_date <=", value, "verifyEndDate");
            return (Criteria) this;
        }

        public Criteria andVerifyEndDateIn(List<Date> values) {
            addCriterion("verify_end_date in", values, "verifyEndDate");
            return (Criteria) this;
        }

        public Criteria andVerifyEndDateNotIn(List<Date> values) {
            addCriterion("verify_end_date not in", values, "verifyEndDate");
            return (Criteria) this;
        }

        public Criteria andVerifyEndDateBetween(Date value1, Date value2) {
            addCriterion("verify_end_date between", value1, value2, "verifyEndDate");
            return (Criteria) this;
        }

        public Criteria andVerifyEndDateNotBetween(Date value1, Date value2) {
            addCriterion("verify_end_date not between", value1, value2, "verifyEndDate");
            return (Criteria) this;
        }

        public Criteria andOwnerPhoneIsNull() {
            addCriterion("owner_phone is null");
            return (Criteria) this;
        }

        public Criteria andOwnerPhoneIsNotNull() {
            addCriterion("owner_phone is not null");
            return (Criteria) this;
        }

        public Criteria andOwnerPhoneEqualTo(String value) {
            addCriterion("owner_phone =", value, "ownerPhone");
            return (Criteria) this;
        }

        public Criteria andOwnerPhoneNotEqualTo(String value) {
            addCriterion("owner_phone <>", value, "ownerPhone");
            return (Criteria) this;
        }

        public Criteria andOwnerPhoneGreaterThan(String value) {
            addCriterion("owner_phone >", value, "ownerPhone");
            return (Criteria) this;
        }

        public Criteria andOwnerPhoneGreaterThanOrEqualTo(String value) {
            addCriterion("owner_phone >=", value, "ownerPhone");
            return (Criteria) this;
        }

        public Criteria andOwnerPhoneLessThan(String value) {
            addCriterion("owner_phone <", value, "ownerPhone");
            return (Criteria) this;
        }

        public Criteria andOwnerPhoneLessThanOrEqualTo(String value) {
            addCriterion("owner_phone <=", value, "ownerPhone");
            return (Criteria) this;
        }

        public Criteria andOwnerPhoneLike(String value) {
            addCriterion("owner_phone like", value, "ownerPhone");
            return (Criteria) this;
        }

        public Criteria andOwnerPhoneNotLike(String value) {
            addCriterion("owner_phone not like", value, "ownerPhone");
            return (Criteria) this;
        }

        public Criteria andOwnerPhoneIn(List<String> values) {
            addCriterion("owner_phone in", values, "ownerPhone");
            return (Criteria) this;
        }

        public Criteria andOwnerPhoneNotIn(List<String> values) {
            addCriterion("owner_phone not in", values, "ownerPhone");
            return (Criteria) this;
        }

        public Criteria andOwnerPhoneBetween(String value1, String value2) {
            addCriterion("owner_phone between", value1, value2, "ownerPhone");
            return (Criteria) this;
        }

        public Criteria andOwnerPhoneNotBetween(String value1, String value2) {
            addCriterion("owner_phone not between", value1, value2, "ownerPhone");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}